package 通用权限检查器;

public class PermissionChecker {
    /**
     * 检查用户是否有权限访问资源
     * @param user 当前用户
     * @param resource 资源对象
     * @param permission 权限类型
     * @return 是否有权限
     */
    public static <T extends Resource> boolean hasPermission(User user, T resource, Permission permission)
    {
        // 1. 检查资源所有者
        if (!resource.getOwnerId().equals(user.getId()))
        {
            return false;
        }

        // 2. 检查用户角色权限
        if (user.getPermission().equals(permission)) return true;
        return false;
    }
}
